package com.zjhn.ds.service;

import com.zjhn.ds.common.BizResult;
import com.zjhn.ds.domain.dto.mt.*;
import com.zjhn.ds.domain.dto.pc.SpotCheckDetailDto;
import com.zjhn.ds.param.*;

import java.util.List;

public interface AppStationMonitorService {

    // app机台监控页面数据
    BizResult<AppStationMonitorV2Dto> stationMonitor(AppStationMonitorParam param);

    // app获取工位当前刷卡任务
    BizResult<CurrentTaskDto> currentTask(String stationId);

    // app获取工位排队任务
    BizResult<List<QueueTaskDto>> queueTask(String stationId);

    // app确认报工
    BizResult<?> report(ReportParam param);

    // app刷卡
    BizResult<?> swipeCard(SwipeCardParam param);

    // app派工任务完成
    BizResult<?> finishTask(FinishTaskParam param);

    // app抽查
    BizResult<?> spotCheck(SpotCheckParam param);

    // app抽检扫码获取工位当前刷卡任务
    BizResult<SpotCurrentTaskDto> spotCheckCurrentTask(String stationCode);

    // app机台历史抽查记录
    BizResult<List<SpotCheckDetailDto>> spotCheckHistory(String stationCode);

    // app开始改机
    BizResult<?> machineChange(MaintenanceChangeParam param);

    // app改机结束
    BizResult<?> machineChangeFinish(MachineChangeFinishParam param);

    // app开始维修
    BizResult<?> maintenance(MaintenanceChangeParam param);

    // app维修结束
    BizResult<?> maintenanceFinish(String maintenanceId);

    // app开始编织打样
    BizResult<?> proofing(ProofingParam param);

    // app编织打样结束
    BizResult<?> proofingFinish(String proofingId);
}
